-- 计算攻击者攻击后，本身的回血（即吸血）

return function(source, target)
    local sources = FormulaM.getPropTargets(source);
    if (sources.isAttacker) then
        sources = _G.templet:getFriends(source);
    end
    
    -- 330：攻击命中后生命恢复N%
    local hp = 0;
    local prop = FormulaM.combineProp(sources, 330);
    if (prop[2] > 0) then
        hp = hp + PropM.apply(prop, source.getMaxHp());
    end
    
    -- 23： 伤害N%转为自身血量
    prop = FormulaM.combineProp(sources, 23);
    if (prop[2] > 0) then
        hp = hp + PropM.apply(prop, source.dbase:queryTemp("damage_hp", 0));
    end
    
    return hp;
end